package org.jeecg.modules.analysis.genealogy.service;

import org.jeecg.modules.analysis.genealogy.entity.PatentGraphData;
import org.jeecg.modules.analysis.genealogy.entity.PatentNodeDetail;

/**
 * @Description: 专利谱系图服务
 * @Author: jeecg-boot
 * @Date: 2025-10-11
 * @Version: V1.0
 */
public interface IPatentGraphService {

    /**
     * 根据专利ID和关联类型获取谱系图数据
     *
     * @param patentId 专利ID
     * @param relationType 关联类型: institution-机构, inventor-发明人
     * @return 谱系图数据
     */
    PatentGraphData getPatentGraphData(String patentId, String relationType);

    /**
     * 计算专利重要性评分
     *
     * @param patentId 专利ID
     * @return 重要性评分 (0-1之间)
     */
    Double calculatePatentImportance(String patentId);

    /**
     * 获取专利详细信息
     *
     * @param patentId 专利ID
     * @return 专利详细信息
     */
    PatentNodeDetail getPatentDetail(String patentId);
}


